Skip to content

feat: Cloudflare Pages 部署支持 + 扫码登录兼容修复#164

Open
vmxmy wants to merge 1 commit into
wechat-article:masterfrom
vmxmy:feat/cloudflare-pages-deploy
Open

feat: Cloudflare Pages 部署支持 + 扫码登录兼容修复#164
vmxmy wants to merge 1 commit into
wechat-article:masterfrom
vmxmy:feat/cloudflare-pages-deploy

Conversation

@vmxmy
Copy link
Copy Markdown

@vmxmy vmxmy commented Apr 27, 2026

Summary

  • 添加 wrangler.toml,绑定 KV namespace 用于会话存储
  • nuxt.config.ts 加入 preset: process.env.NITRO_PRESETbinding: 'KV',确保 cloudflare_pages 预设和 KV 正确注入
  • package.json 补充 deploy/preview 脚本(输出目录修正为 dist
  • 新增 server/utils/set-cookie.tsextractSetCookieValues 兼容 CF Workers 运行时 getSetCookie() 不可靠问题,提供正则回退路径
  • mp-gateway.ts 统一使用 extractSetCookieValues,加入 [login] 诊断日志(native/extracted 计数)
  • auth-session.ts getCookieValueFromResponse 改用 extractSetCookieValues,消除裸 getSetCookie() 调用
  • bizlogin.post.ts 错误透传:不再吞掉上游 base_resp.err_msg,方便定位 KV 写入失败等具体原因
  • 重构 server/services/ 目录(auth-session, mp-gateway, mp-service, session-core, mp-core)

Test plan

  • 部署到 Cloudflare Pages(yarn deploy
  • 扫码登录成功
  • /api/public/v1/download 接口可正常获取文章内容(text / json 格式验证通过)

🤖 Generated with Claude Code

- 添加 wrangler.toml,绑定 KV namespace(id: 22d46ff673c946f1a5f3b790818b5618)
- nuxt.config.ts 加入 preset/binding 配置,确保 cloudflare_pages 预设和 KV 正确注入
- package.json 补充 deploy/preview 脚本(输出目录从 .output 修正为 dist)
- 抽取 server/utils/set-cookie.ts:extractSetCookieValues 在 CF Workers 运行时兼容 getSetCookie() 不可靠的问题,加入正则回退路径
- server/services/api/mp-gateway.ts 统一使用 extractSetCookieValues,加入 [login] 诊断日志(native/extracted 计数)
- server/services/api/auth-session.ts getCookieValueFromResponse 改用 extractSetCookieValues,消除另一处裸 getSetCookie() 调用
- bizlogin.post.ts 错误透传:不再吞掉上游 base_resp.err_msg,方便定位 KV 写入失败等具体原因
- 重构 server/services/ 目录(auth-session, mp-gateway, mp-service, session-core, mp-core)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant